package com.ourteam.product.ui.domain;
/**
 * Template Name : DTO数据对象 Template Version : 1 Template Last Modfiy Date : Fri Nov 30 16:49:33 CST
 * 2018 Auto Generate Date : 2018-12-14 15:15:22 Warning ! This file will be overwrite when
 * regenerate !
 */
import java.util.HashMap;
import java.util.Map;
import net.dao.IDataPopulateCallback;
import org.apache.commons.beanutils.BeanMap;
import org.apache.commons.lang.ArrayUtils;

public class ProductUIActionBean implements java.io.Serializable {

  private static Map<String, String> mappedDaoFields = new HashMap<String, String>();

  private com.ourteam.product.ui.dao.ProductUIAction productUIAction;

  protected BeanMap getBeanMap() {

    return new BeanMap(productUIAction);
  }

  static {
    mappedDaoFields.put("id", com.ourteam.product.ui.dao.IProductUIActionDAO.Id);

    mappedDaoFields.put("domainId", com.ourteam.product.ui.dao.IProductUIActionDAO.DomainId);

    mappedDaoFields.put("code", com.ourteam.product.ui.dao.IProductUIActionDAO.Code);

    mappedDaoFields.put("type", com.ourteam.product.ui.dao.IProductUIActionDAO.Type);

    mappedDaoFields.put("handler", com.ourteam.product.ui.dao.IProductUIActionDAO.Handler);

    mappedDaoFields.put("icon", com.ourteam.product.ui.dao.IProductUIActionDAO.Icon);

    mappedDaoFields.put("labelText", com.ourteam.product.ui.dao.IProductUIActionDAO.LabelText);

    mappedDaoFields.put("labelKey", com.ourteam.product.ui.dao.IProductUIActionDAO.LabelKey);

    mappedDaoFields.put("confirmInfo", com.ourteam.product.ui.dao.IProductUIActionDAO.ConfirmInfo);

    mappedDaoFields.put(
        "confirmInfoKey", com.ourteam.product.ui.dao.IProductUIActionDAO.ConfirmInfoKey);

    mappedDaoFields.put(
        "lastModifyUser", com.ourteam.product.ui.dao.IProductUIActionDAO.LastModifyUser);

    mappedDaoFields.put(
        "lastModifyTime", com.ourteam.product.ui.dao.IProductUIActionDAO.LastModifyTime);

    mappedDaoFields.put("status", com.ourteam.product.ui.dao.IProductUIActionDAO.Status);

    mappedDaoFields.put("remarks", com.ourteam.product.ui.dao.IProductUIActionDAO.Remarks);

    mappedDaoFields.put("domainCode", com.ourteam.product.ui.dao.IProductUIActionDAO.DomainCode);

    mappedDaoFields.put("domainName", com.ourteam.product.ui.dao.IProductUIActionDAO.DomainName);

    mappedDaoFields.put("parentId", com.ourteam.product.ui.dao.IProductUIActionDAO.ParentId);

    mappedDaoFields.put("sortIndex", com.ourteam.product.ui.dao.IProductUIActionDAO.SortIndex);

    mappedDaoFields.put(
        "visibleScript", com.ourteam.product.ui.dao.IProductUIActionDAO.VisibleScript);

    mappedDaoFields.put("listCode", com.ourteam.product.ui.dao.IProductUIActionDAO.ListCode);

    mappedDaoFields.put("menuListId", com.ourteam.product.ui.dao.IProductUIActionDAO.MenuListId);

    mappedDaoFields.put(
        "disableScript", com.ourteam.product.ui.dao.IProductUIActionDAO.DisableScript);

    mappedDaoFields.put("style", com.ourteam.product.ui.dao.IProductUIActionDAO.Style);
  }

  public static String getMappedDAOField(String aAttrName) {
    return mappedDaoFields.get(aAttrName);
  }

  public ProductUIActionBean() {
    super();

    this.productUIAction = new com.ourteam.product.ui.dao.ProductUIAction();
  }

  public ProductUIActionBean(com.ourteam.product.ui.dao.ProductUIAction productUIAction) {
    super();

    this.productUIAction = productUIAction;
  }

  public com.ourteam.product.ui.dao.ProductUIAction convertToProductUIAction() {
    return this.productUIAction;
  }

  public com.ourteam.product.ui.dao.ProductUIAction convertTo() {
    return this.productUIAction;
  }

  /**
   * Get id
   *
   * @return long
   */
  public long getId() {
    return (long) this.productUIAction.getId();
  }

  /**
   * Set id
   *
   * @parameter long
   */
  public void setId(long id) {

    this.productUIAction.setId(id);
  }

  /**
   * Get domainId
   *
   * @return long
   */
  public long getDomainId() {
    return (long) this.productUIAction.getDomainId();
  }

  /**
   * Set domainId
   *
   * @parameter long
   */
  public void setDomainId(long domainId) {

    this.productUIAction.setDomainId(domainId);
  }

  /**
   * Get code
   *
   * @return String
   */
  public String getCode() {
    return (String) this.productUIAction.getCode();
  }

  /**
   * Set code
   *
   * @parameter String
   */
  public void setCode(String code) {

    this.productUIAction.setCode(code);
  }

  /**
   * Get type
   *
   * @return String
   */
  public String getType() {
    return (String) this.productUIAction.getType();
  }

  /**
   * Set type
   *
   * @parameter String
   */
  public void setType(String type) {

    this.productUIAction.setType(type);
  }

  /**
   * Get handler
   *
   * @return String
   */
  public String getHandler() {
    return (String) this.productUIAction.getHandler();
  }

  /**
   * Set handler
   *
   * @parameter String
   */
  public void setHandler(String handler) {

    this.productUIAction.setHandler(handler);
  }

  /**
   * Get icon
   *
   * @return String
   */
  public String getIcon() {
    return (String) this.productUIAction.getIcon();
  }

  /**
   * Set icon
   *
   * @parameter String
   */
  public void setIcon(String icon) {

    this.productUIAction.setIcon(icon);
  }

  /**
   * Get labelText
   *
   * @return String
   */
  public String getLabelText() {
    return (String) this.productUIAction.getLabelText();
  }

  /**
   * Set labelText
   *
   * @parameter String
   */
  public void setLabelText(String labelText) {

    this.productUIAction.setLabelText(labelText);
  }

  /**
   * Get labelKey
   *
   * @return String
   */
  public String getLabelKey() {
    return (String) this.productUIAction.getLabelKey();
  }

  /**
   * Set labelKey
   *
   * @parameter String
   */
  public void setLabelKey(String labelKey) {

    this.productUIAction.setLabelKey(labelKey);
  }

  /**
   * Get confirmInfo
   *
   * @return String
   */
  public String getConfirmInfo() {
    return (String) this.productUIAction.getConfirmInfo();
  }

  /**
   * Set confirmInfo
   *
   * @parameter String
   */
  public void setConfirmInfo(String confirmInfo) {

    this.productUIAction.setConfirmInfo(confirmInfo);
  }

  /**
   * Get confirmInfoKey
   *
   * @return String
   */
  public String getConfirmInfoKey() {
    return (String) this.productUIAction.getConfirmInfoKey();
  }

  /**
   * Set confirmInfoKey
   *
   * @parameter String
   */
  public void setConfirmInfoKey(String confirmInfoKey) {

    this.productUIAction.setConfirmInfoKey(confirmInfoKey);
  }

  /**
   * Get lastModifyUser
   *
   * @return String
   */
  public String getLastModifyUser() {
    return (String) this.productUIAction.getLastModifyUser();
  }

  /**
   * Set lastModifyUser
   *
   * @parameter String
   */
  public void setLastModifyUser(String lastModifyUser) {

    this.productUIAction.setLastModifyUser(lastModifyUser);
  }

  /**
   * Get lastModifyTime
   *
   * @return java.util.Date
   */
  public java.util.Date getLastModifyTime() {
    return (java.util.Date) this.productUIAction.getLastModifyTime();
  }

  /**
   * Set lastModifyTime
   *
   * @parameter java.util.Date
   */
  public void setLastModifyTime(java.util.Date lastModifyTime) {

    this.productUIAction.setLastModifyTime(lastModifyTime);
  }

  /**
   * Get status
   *
   * @return String
   */
  public String getStatus() {
    return (String) this.productUIAction.getStatus();
  }

  /**
   * Set status
   *
   * @parameter String
   */
  public void setStatus(String status) {

    this.productUIAction.setStatus(status);
  }

  /**
   * Get remarks
   *
   * @return String
   */
  public String getRemarks() {
    return (String) this.productUIAction.getRemarks();
  }

  /**
   * Set remarks
   *
   * @parameter String
   */
  public void setRemarks(String remarks) {

    this.productUIAction.setRemarks(remarks);
  }

  /**
   * Get domainCode
   *
   * @return String
   */
  public String getDomainCode() {

    return (String) this.productUIAction.getDomainCode();
  }

  /**
   * Get domainName
   *
   * @return String
   */
  public String getDomainName() {

    return (String) this.productUIAction.getDomainName();
  }

  /**
   * Get parentId
   *
   * @return long
   */
  public long getParentId() {
    return (long) this.productUIAction.getParentId();
  }

  /**
   * Set parentId
   *
   * @parameter long
   */
  public void setParentId(long parentId) {

    this.productUIAction.setParentId(parentId);
  }

  /**
   * Get sortIndex
   *
   * @return int
   */
  public int getSortIndex() {
    return (int) this.productUIAction.getSortIndex();
  }

  /**
   * Set sortIndex
   *
   * @parameter int
   */
  public void setSortIndex(int sortIndex) {

    this.productUIAction.setSortIndex(sortIndex);
  }

  /**
   * Get visibleScript
   *
   * @return String
   */
  public String getVisibleScript() {
    return (String) this.productUIAction.getVisibleScript();
  }

  /**
   * Set visibleScript
   *
   * @parameter String
   */
  public void setVisibleScript(String visibleScript) {

    this.productUIAction.setVisibleScript(visibleScript);
  }

  /**
   * Get listCode
   *
   * @return String
   */
  public String getListCode() {

    return (String) this.productUIAction.getListCode();
  }

  /**
   * Get menuListId
   *
   * @return long
   */
  public long getMenuListId() {
    return (long) this.productUIAction.getMenuListId();
  }

  /**
   * Set menuListId
   *
   * @parameter long
   */
  public void setMenuListId(long menuListId) {

    this.productUIAction.setMenuListId(menuListId);
  }

  /**
   * Get disableScript
   *
   * @return String
   */
  public String getDisableScript() {
    return (String) this.productUIAction.getDisableScript();
  }

  /**
   * Set disableScript
   *
   * @parameter String
   */
  public void setDisableScript(String disableScript) {

    this.productUIAction.setDisableScript(disableScript);
  }

  /**
   * Get style
   *
   * @return String
   */
  public String getStyle() {
    return (String) this.productUIAction.getStyle();
  }

  /**
   * Set style
   *
   * @parameter String
   */
  public void setStyle(String style) {

    this.productUIAction.setStyle(style);
  }

  public int hashCode() {
    return org.apache.commons.lang.builder.HashCodeBuilder.reflectionHashCode(this);
  }

  public boolean equals(Object obj) {
    if (obj == null) {
      return false;
    } // end if

    if ((obj instanceof ProductUIActionBean) == false) {
      return false;
    } // end if

    ProductUIActionBean other = (ProductUIActionBean) obj;

    boolean isEqual = false;

    com.ourteam.product.ui.dao.ProductUIAction tempProductUIAction =
        other.convertToProductUIAction();

    if (tempProductUIAction == null || this.productUIAction == null) {
      isEqual = false;
    } else if (tempProductUIAction == this.productUIAction
        || tempProductUIAction.equals(this.productUIAction)) {
      isEqual = true;
    } else {
      isEqual = false;
    }

    return isEqual;
  }

  public static ProductUIActionBean[] toArray(
      com.ourteam.product.ui.dao.ProductUIAction[] aProductUIActions) {

    return toArray(aProductUIActions, null);
  }

  public static ProductUIActionBean[] toArray(
      com.ourteam.product.ui.dao.ProductUIAction[] aProductUIActions,
      IDataPopulateCallback aCallBack) {

    if (ArrayUtils.isEmpty(aProductUIActions)) {
      return new ProductUIActionBean[0];
    }

    int length = aProductUIActions.length;

    ProductUIActionBean[] beans = new ProductUIActionBean[length];

    for (int i = 0; i < length; i++) {
      beans[i] = new ProductUIActionBean(aProductUIActions[i]);
      if (aCallBack != null) {
        aCallBack.populate(beans[i], new Object[] {aProductUIActions[i]});
      }
    }

    return beans;
  }
}
